<html>
  <head>
    <title>DataSource</title>
    <link rel='stylesheet' type='text/css' href='../../stylesheet.css' title='Style' />
  </head>
  <body>
    <table border='0' width='100%' cellpadding='1' cellspacing='0' summary=''>
      <tr>
        <td colspan='2' bgcolor='#EEEEFF' class='NavBarCell1'>
          <table border='0' cellpadding='0' cellspacing='3' summary=''>
            <tr align='center' valign='top'>
              <td bgcolor='#EEEEFF' class='NavBarCell1'>
                <a href='../../overview-summary.html'>
                  <font class='NavBarFont1'>
                    <b>Overview</b>
                  </font>
                </a>&nbsp;
              </td>
              <td bgcolor='#EEEEFF' class='NavBarCell1'>
                <a href='package-summary.html'>
                  <font class='NavBarFont1'>
                    <b>Package</b>
                  </font>
                </a>&nbsp;
              </td>
              <td bgcolor='#FFFFFF' class='NavBarCell1Rev'>
                <font class='NavBarFont1Rev'>
                  <b>Unit</b>
                </font>&nbsp;
              </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    <hr />
    <h2>
      <font size='-1'>OpenEdge\DataSource</font>
      <br />CLASS DataSource
    </h2>
    <p>CLASS OpenEdge.DataSource.DataSource abstract USE-WIDGET-POOL INHERITS <a href="../../OpenEdge/CommonInfrastructure/Common/Component.cls.html" title="OpenEdge.CommonInfrastructure.Common.Component" target="classFrame">Component</a> IMPLEMENTS <a href="../../OpenEdge/DataSource/IDataSource.cls.html" title="OpenEdge.DataSource.IDataSource" target="classFrame">IDataSource</a> </p>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
				<A NAME="field_summary"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
				<B>Field Summary</B></FONT></TH>
				</TR>
				
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.AfterFill'>AfterFill</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.AfterRowFill'>AfterRowFill</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.AfterSave'>AfterSave</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.AfterSaveTransaction'>AfterSaveTransaction</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.BeforeFill'>BeforeFill</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.BeforeRowFill'>BeforeRowFill</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.BeforeSave'>BeforeSave</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#1194.BeforeSaveTransaction'>BeforeSaveTransaction</a>
          </b>PUBLIC 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
				</TABLE>&nbsp;<P>
				
				<A NAME="property_summary"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
				<B>Property Summary</B></FONT></TH>
				</TR>
				
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.CurrentActionType'>CurrentActionType</a>
          </b> PROTECTED GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The type of request currently underway making the current request.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/DataAccess/IDataAccess.cls.html" title="OpenEdge.DataAccess.IDataAccess" target="classFrame">IDataAccess</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.CurrentDAO'>CurrentDAO</a>
          </b> PROTECTED GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The DataAccess object making the current request.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.CurrentTableResponse'>CurrentTableResponse</a>
          </b> PROTECTED GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The table response object that's currently being processed.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/DataFormatEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.DataFormatEnum" target="classFrame">DataFormatEnum</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.DataTargetFormat'>DataTargetFormat</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The data transport type for this message. These may differ for request and response.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/Lang/DataTypeEnum.cls.html" title="OpenEdge.Lang.DataTypeEnum" target="classFrame">DataTypeEnum</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.DataTargetType'>DataTargetType</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/Lang/FillModeEnum.cls.html" title="OpenEdge.Lang.FillModeEnum" target="classFrame">FillModeEnum</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.FillMode'>FillMode</a>
          </b> PUBLIC GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default fill mode for the data fetch (merge etc) for this datasource.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>HANDLE</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.HandleDataTarget'>HandleDataTarget</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Individual data target types. Manipulated by SetDataTarget(), and GetDataTarget()
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../Progress/Lang/Class.cls.html" title="Progress.Lang.Class" target="classFrame">Class</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.IDataSourceType'>IDataSourceType</a>
          </b> STATIC GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type used for InjectABL binding
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>LONGCHAR</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.LongCharDataTarget'>LongCharDataTarget</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>MEMPTR</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.MemptrDataTarget'>MemptrDataTarget</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../Progress/Lang/Object.cls.html" title="Progress.Lang.Object" target="classFrame">Object</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.ObjectDataTarget'>ObjectDataTarget</a>
          </b> PROTECTED GET PRIVATE SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>INTEGER</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.PageSize'>PageSize</a>
          </b> PUBLIC GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default Page or batch size for this datasource. Can be overridden
      </td>
    </tr>
				</TABLE>&nbsp;<P>
				
				<A NAME="method_summary"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
				<B>Method Summary</B></FONT></TH>
				</TR>
				
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>STATIC </code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#()'>CONSTRUCTOR </a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#(openedge.commoninfrastructure.common.icomponentinfo)'>CONSTRUCTOR </a>
          </b>(<a href="../../OpenEdge/CommonInfrastructure/Common/IComponentInfo.cls.html" title="OpenEdge.CommonInfrastructure.Common.IComponentInfo" target="classFrame">IComponentInfo</a> poComponentInfo)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#addtenantfilter(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'> AddTenantFilter</a>
          </b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds filtering by tenant to for a given action.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#attachdatastoretotarget(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'> AttachDataStoreToTarget</a>
          </b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Attaches the actual datastore - this could be an ABL datasource, or some other
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#cleardatatarget()'> ClearDataTarget</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clears the Datatarget and associated properties
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#createcomponent()'> CreateComponent</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#createdatastore()'> CreateDataStore</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates the actual datasource - this could be an ABL datasource, or some other
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#deletedatastore()'> DeleteDataStore</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deletes the datastore once done.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#destroycomponent()'> DestroyComponent</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#detachdatastorefromtarget(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'> DetachDataStoreFromTarget</a>
          </b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Detaches the datastore from the datatarget
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#fetchdata()'> FetchData</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform fetch: populate the data target from the physical data store.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#getdata()'> GetData</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Called on completion of a data fetch request, typically by the data access object.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>LONGCHAR</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#getdatatarget()'> GetDataTarget</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A helper for retrieving the data target in longchar form again. Performs
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onafterfill()'> OnAfterFill</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onafterfill(openedge.datasource.datasourceeventargs)'> OnAfterFill</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onafterrowfill(character)'> OnAfterRowFill</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onafterrowfill(openedge.datasource.datasourceeventargs)'> OnAfterRowFill</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onaftersave(character)'> OnAfterSave</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onaftersave(openedge.datasource.datasourceeventargs)'> OnAfterSave</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onaftersavetransaction(character)'> OnAfterSaveTransaction</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onaftersavetransaction(openedge.datasource.datasourceeventargs)'> OnAfterSaveTransaction</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforefill()'> OnBeforeFill</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforefill(openedge.datasource.datasourceeventargs)'> OnBeforeFill</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforerowfill(character)'> OnBeforeRowFill</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforerowfill(openedge.datasource.datasourceeventargs)'> OnBeforeRowFill</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforesave(character)'> OnBeforeSave</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforesave(openedge.datasource.datasourceeventargs)'> OnBeforeSave</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforesavetransaction(character)'> OnBeforeSaveTransaction</a>
          </b>(CHARACTER pcRowKey)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#onbeforesavetransaction(openedge.datasource.datasourceeventargs)'> OnBeforeSaveTransaction</a>
          </b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#prepare(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum,openedge.commoninfrastructure.common.servicemessage.itablerequest,openedge.dataaccess.idataaccess)'> Prepare</a>
          </b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction, <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableRequest.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableRequest" target="classFrame">ITableRequest</a> poRequest, <a href="../../OpenEdge/DataAccess/IDataAccess.cls.html" title="OpenEdge.DataAccess.IDataAccess" target="classFrame">IDataAccess</a> poDAO)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prepare with query, batchsize and more.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#savedata()'> SaveData</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Saves all records in the buffer argument to the physical data store. This
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#setdatatarget(handle)'> SetDataTarget</a>
          </b>(HANDLE phData)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This SetDataTarget override is provided since the bulk of datatargets in ABL
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#setdatatarget(longchar,openedge.commoninfrastructure.common.servicemessage.dataformatenum,openedge.lang.datatypeenum)'> SetDataTarget</a>
          </b>(LONGCHAR pcData, <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/DataFormatEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.DataFormatEnum" target="classFrame">DataFormatEnum</a> poDataTargetFormat, <a href="../../OpenEdge/Lang/DataTypeEnum.cls.html" title="OpenEdge.Lang.DataTypeEnum" target="classFrame">DataTypeEnum</a> poDataTargetType)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetDataTarget() methods are called by the DataAccess object, to specify
      </td>
    </tr>
				</TABLE>&nbsp;<P>
				
				<A NAME="field_detail"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
				<B>Field Detail</B></FONT></TH>
				</TR></TABLE>
				
    <a name='1194.AfterFill'><!-- --></a>
    <h3>AfterFill</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.AfterRowFill'><!-- --></a>
    <h3>AfterRowFill</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.AfterSave'><!-- --></a>
    <h3>AfterSave</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.AfterSaveTransaction'><!-- --></a>
    <h3>AfterSaveTransaction</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.BeforeFill'><!-- --></a>
    <h3>BeforeFill</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.BeforeRowFill'><!-- --></a>
    <h3>BeforeRowFill</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.BeforeSave'><!-- --></a>
    <h3>BeforeSave</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='1194.BeforeSaveTransaction'><!-- --></a>
    <h3>BeforeSaveTransaction</h3>
    <code> PUBLIC </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
				<A NAME="property_detail"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
				<B>Property Detail</B></FONT></TH>
				</TR></TABLE>
				
    <a name='property.CurrentActionType'><!-- --></a>
    <h3>CurrentActionType</h3>
    <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> PROTECTED GET SET </code>
    <dl>
      <dd>The type of request currently underway making the current request. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.CurrentDAO'><!-- --></a>
    <h3>CurrentDAO</h3>
    <code><a href="../../OpenEdge/DataAccess/IDataAccess.cls.html" title="OpenEdge.DataAccess.IDataAccess" target="classFrame">IDataAccess</a> PROTECTED GET SET </code>
    <dl>
      <dd>The DataAccess object making the current request. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.CurrentTableResponse'><!-- --></a>
    <h3>CurrentTableResponse</h3>
    <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a> PROTECTED GET SET </code>
    <dl>
      <dd>The table response object that's currently being processed. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.DataTargetFormat'><!-- --></a>
    <h3>DataTargetFormat</h3>
    <code><a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/DataFormatEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.DataFormatEnum" target="classFrame">DataFormatEnum</a> PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>The data transport type for this message. These may differ for request and response. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.DataTargetType'><!-- --></a>
    <h3>DataTargetType</h3>
    <code><a href="../../OpenEdge/Lang/DataTypeEnum.cls.html" title="OpenEdge.Lang.DataTypeEnum" target="classFrame">DataTypeEnum</a> PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.FillMode'><!-- --></a>
    <h3>FillMode</h3>
    <code><a href="../../OpenEdge/Lang/FillModeEnum.cls.html" title="OpenEdge.Lang.FillModeEnum" target="classFrame">FillModeEnum</a> PUBLIC GET SET </code>
    <dl>
      <dd>The default fill mode for the data fetch (merge etc) for this datasource. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.HandleDataTarget'><!-- --></a>
    <h3>HandleDataTarget</h3>
    <code>HANDLE PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>Individual data target types. Manipulated by SetDataTarget(), and GetDataTarget() <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.IDataSourceType'><!-- --></a>
    <h3>IDataSourceType</h3>
    <code><a href="../../Progress/Lang/Class.cls.html" title="Progress.Lang.Class" target="classFrame">Class</a> STATIC GET PRIVATE SET </code>
    <dl>
      <dd>Type used for InjectABL binding <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.LongCharDataTarget'><!-- --></a>
    <h3>LongCharDataTarget</h3>
    <code>LONGCHAR PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.MemptrDataTarget'><!-- --></a>
    <h3>MemptrDataTarget</h3>
    <code>MEMPTR PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.ObjectDataTarget'><!-- --></a>
    <h3>ObjectDataTarget</h3>
    <code><a href="../../Progress/Lang/Object.cls.html" title="Progress.Lang.Object" target="classFrame">Object</a> PROTECTED GET PRIVATE SET </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='property.PageSize'><!-- --></a>
    <h3>PageSize</h3>
    <code>INTEGER PUBLIC GET SET </code>
    <dl>
      <dd>The default Page or batch size for this datasource. Can be overridden <p> </dd>
      <dd>by the page size on the table request. </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
				<A NAME="method_detail"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
				<B>Method Detail</B></FONT></TH>
				</TR></TABLE>
				
    <a name='()'><!-- --></a>
    <h3>CONSTRUCTOR</h3>
    <code>STATIC  
      <b>CONSTRUCTOR</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='(openedge.commoninfrastructure.common.icomponentinfo)'><!-- --></a>
    <h3>CONSTRUCTOR</h3>
    <code>PUBLIC  
      <b>CONSTRUCTOR</b>(<a href="../../OpenEdge/CommonInfrastructure/Common/IComponentInfo.cls.html" title="OpenEdge.CommonInfrastructure.Common.IComponentInfo" target="classFrame">IComponentInfo</a> poComponentInfo)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='addtenantfilter(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'><!-- --></a>
    <h3>AddTenantFilter</h3>
    <code> VOID
      <b>AddTenantFilter</b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
    </code>
    <dl>
      <dd>Adds filtering by tenant to for a given action. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>ServiceMessageActionEnum - The current request's action type.<br/></dd>
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>logical Whether a filter was added to the QD.</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='attachdatastoretotarget(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'><!-- --></a>
    <h3>AttachDataStoreToTarget</h3>
    <code> VOID
      <b>AttachDataStoreToTarget</b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
    </code>
    <dl>
      <dd>Attaches the actual datastore - this could be an ABL datasource, or some other <p> </dd>
      <dd>mechanism (XML or a service or something else). These are specific to each datasource instance, and thus is abstract. For example, for an ABL/ProDataSet data source: <code> DATA-SOURCE srcCar:HANDLE:prefer-dataset = TRUE. hBuffer:ATTACH-DATA-SOURCE(DATA-SOURCE srcCar:HANDLE,""). </code> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>ServiceMessageActionEnum - The action being performed (fetch/save).<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='cleardatatarget()'><!-- --></a>
    <h3>ClearDataTarget</h3>
    <code>PUBLIC  VOID
      <b>ClearDataTarget</b>()
    </code>
    <dl>
      <dd>Clears the Datatarget and associated properties <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='createcomponent()'><!-- --></a>
    <h3>CreateComponent</h3>
    <code>OVERRIDE PUBLIC  VOID
      <b>CreateComponent</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='createdatastore()'><!-- --></a>
    <h3>CreateDataStore</h3>
    <code> VOID
      <b>CreateDataStore</b>()
    </code>
    <dl>
      <dd>Creates the actual datasource - this could be an ABL datasource, or some other <p> </dd>
      <dd>mechanism (XML or a service or something else). These are specific to each datasource instance, and thus is abstract. For example, for an ABL/ProDataSet data source: <code> CREATE DATA-SOURCE srcCar. </code> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='deletedatastore()'><!-- --></a>
    <h3>DeleteDataStore</h3>
    <code> VOID
      <b>DeleteDataStore</b>()
    </code>
    <dl>
      <dd>Deletes the datastore once done. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='destroycomponent()'><!-- --></a>
    <h3>DestroyComponent</h3>
    <code>OVERRIDE PUBLIC  VOID
      <b>DestroyComponent</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='detachdatastorefromtarget(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum)'><!-- --></a>
    <h3>DetachDataStoreFromTarget</h3>
    <code> VOID
      <b>DetachDataStoreFromTarget</b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction)
    </code>
    <dl>
      <dd>Detaches the datastore from the datatarget <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>ServiceMessageActionEnum - The action being performed (fetch/save).<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='fetchdata()'><!-- --></a>
    <h3>FetchData</h3>
    <code> VOID
      <b>FetchData</b>()
    </code>
    <dl>
      <dd>Perform fetch: populate the data target from the physical data store. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='getdata()'><!-- --></a>
    <h3>GetData</h3>
    <code> <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a>
      <b>GetData</b>()
    </code>
    <dl>
      <dd>Called on completion of a data fetch request, typically by the data access object. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>ITableResponse The response to the fetch operation.</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='getdatatarget()'><!-- --></a>
    <h3>GetDataTarget</h3>
    <code>PUBLIC  LONGCHAR
      <b>GetDataTarget</b>()
    </code>
    <dl>
      <dd>A helper for retrieving the data target in longchar form again. Performs <p> </dd>
      <dd>the inverse of the SetDataTarget() method; this is basically just a STRING() of the value or reference. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>longchar A longchar representation of the data target.</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='onafterfill()'><!-- --></a>
    <h3>OnAfterFill</h3>
    <code>PROTECTED  VOID
      <b>OnAfterFill</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onafterfill(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnAfterFill</h3>
    <code>PROTECTED  VOID
      <b>OnAfterFill</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onafterrowfill(character)'><!-- --></a>
    <h3>OnAfterRowFill</h3>
    <code>PROTECTED  VOID
      <b>OnAfterRowFill</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onafterrowfill(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnAfterRowFill</h3>
    <code>PROTECTED  VOID
      <b>OnAfterRowFill</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onaftersave(character)'><!-- --></a>
    <h3>OnAfterSave</h3>
    <code>PROTECTED  VOID
      <b>OnAfterSave</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onaftersave(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnAfterSave</h3>
    <code>PROTECTED  VOID
      <b>OnAfterSave</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onaftersavetransaction(character)'><!-- --></a>
    <h3>OnAfterSaveTransaction</h3>
    <code>PROTECTED  VOID
      <b>OnAfterSaveTransaction</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onaftersavetransaction(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnAfterSaveTransaction</h3>
    <code>PROTECTED  VOID
      <b>OnAfterSaveTransaction</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforefill()'><!-- --></a>
    <h3>OnBeforeFill</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeFill</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforefill(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnBeforeFill</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeFill</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforerowfill(character)'><!-- --></a>
    <h3>OnBeforeRowFill</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeRowFill</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforerowfill(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnBeforeRowFill</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeRowFill</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforesave(character)'><!-- --></a>
    <h3>OnBeforeSave</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeSave</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforesave(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnBeforeSave</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeSave</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforesavetransaction(character)'><!-- --></a>
    <h3>OnBeforeSaveTransaction</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeSaveTransaction</b>(CHARACTER pcRowKey)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='onbeforesavetransaction(openedge.datasource.datasourceeventargs)'><!-- --></a>
    <h3>OnBeforeSaveTransaction</h3>
    <code>PROTECTED  VOID
      <b>OnBeforeSaveTransaction</b>(<a href="../../OpenEdge/DataSource/DataSourceEventArgs.cls.html" title="OpenEdge.DataSource.DataSourceEventArgs" target="classFrame">DataSourceEventArgs</a> poArgs)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='prepare(openedge.commoninfrastructure.common.servicemessage.servicemessageactionenum,openedge.commoninfrastructure.common.servicemessage.itablerequest,openedge.dataaccess.idataaccess)'><!-- --></a>
    <h3>Prepare</h3>
    <code>PUBLIC  VOID
      <b>Prepare</b>(<a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ServiceMessageActionEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ServiceMessageActionEnum" target="classFrame">ServiceMessageActionEnum</a> poAction, <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableRequest.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableRequest" target="classFrame">ITableRequest</a> poRequest, <a href="../../OpenEdge/DataAccess/IDataAccess.cls.html" title="OpenEdge.DataAccess.IDataAccess" target="classFrame">IDataAccess</a> poDAO)
    </code>
    <dl>
      <dd>Prepare with query, batchsize and more. <p> </dd>
      <dd>Very important note: If the datasource query is modified, the order of operations for making sure the query is correct and works is (1) ASSIGN the data-source query handle to the customised query, (2) ATTACH the datasource, and (3) PREPARE the custom query. You also need to manually/explicity add the parent join phrase. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>ServiceMessageActionEnum - The action that we're preparing the datasource for.We may have different actions based on whether this is a Fetch or a Save. <br/>ITableRequest - Parameters for the fetch (query modifications, page size etc).<br/>IDataAccess - The DataAccess object making this request. The DAO can be used toresolve table- or field name mappings (from the Business Entity names to the Data Source names. <br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='savedata()'><!-- --></a>
    <h3>SaveData</h3>
    <code> <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/ITableResponse.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.ITableResponse" target="classFrame">ITableResponse</a>
      <b>SaveData</b>()
    </code>
    <dl>
      <dd>Saves all records in the buffer argument to the physical data store. This <p> </dd>
      <dd>buffer comes from the DataAccess object. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>ITableResponse The response to the save operation.</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='setdatatarget(handle)'><!-- --></a>
    <h3>SetDataTarget</h3>
    <code>PUBLIC  VOID
      <b>SetDataTarget</b>(HANDLE phData)
    </code>
    <dl>
      <dd>This SetDataTarget override is provided since the bulk of datatargets in ABL <p> </dd>
      <dd>will be buffers (possibly datasets). An exception will be thrown if the handle has a type of anything other than 'buffer' or 'dataset'. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>handle - A buffer or dataset handle that is the data target.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='setdatatarget(longchar,openedge.commoninfrastructure.common.servicemessage.dataformatenum,openedge.lang.datatypeenum)'><!-- --></a>
    <h3>SetDataTarget</h3>
    <code>PUBLIC  VOID
      <b>SetDataTarget</b>(LONGCHAR pcData, <a href="../../OpenEdge/CommonInfrastructure/Common/ServiceMessage/DataFormatEnum.cls.html" title="OpenEdge.CommonInfrastructure.Common.ServiceMessage.DataFormatEnum" target="classFrame">DataFormatEnum</a> poDataTargetFormat, <a href="../../OpenEdge/Lang/DataTypeEnum.cls.html" title="OpenEdge.Lang.DataTypeEnum" target="classFrame">DataTypeEnum</a> poDataTargetType)
    </code>
    <dl>
      <dd>SetDataTarget() methods are called by the DataAccess object, to specify <p> </dd>
      <dd>the target for the DataSource's operations (usually the fill/fetch). This data is formatted per the DataTargetFormat above; and is stored in the message as either LONGCHAR, MEMPTR, HANDLE or P.L.O. </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
  </body>
</html>